home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.004 / xemacs-1 / xemacs-19.13 / src / keymap.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-07-24  |  2.6 KB  |  63 lines

  1. /* prototypes for keymap-hacking
  2.    Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
  3.  
  4. This file is part of XEmacs.
  5.  
  6. XEmacs is free software; you can redistribute it and/or modify it
  7. under the terms of the GNU General Public License as published by the
  8. Free Software Foundation; either version 2, or (at your option) any
  9. later version.
  10.  
  11. XEmacs is distributed in the hope that it will be useful, but WITHOUT
  12. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13. FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14. for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with XEmacs; see the file COPYING.  If not, write to the Free
  18. Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19.  
  20. /* Synched up with: Not in FSF. */
  21.  
  22.  
  23. #ifndef _XEMACS_KEYMAP_H_
  24. #define _XEMACS_KEYMAP_H_
  25.  
  26. DECLARE_LRECORD (keymap, struct keymap);
  27. #define XKEYMAP(x) XRECORD (x, keymap, struct keymap)
  28. #define XSETKEYMAP(x, p) XSETRECORD (x, p, keymap)
  29. #define KEYMAPP(x) RECORDP (x, keymap)
  30. #define CHECK_KEYMAP(x, i) CHECK_RECORD (x, keymap)
  31.  
  32. extern Lisp_Object get_keymap (Lisp_Object object, int errorp, int autoload);
  33. extern Lisp_Object event_binding (Lisp_Object event0, int accept_default);
  34. extern Lisp_Object function_key_map_event_binding (Lisp_Object event0);
  35.  
  36. extern Lisp_Object Fkey_description (Lisp_Object keys);
  37. extern Lisp_Object Fsingle_key_description (Lisp_Object key);
  38. extern Lisp_Object Fwhere_is_internal (Lisp_Object definition, 
  39.                                        Lisp_Object keymaps,
  40.                                        Lisp_Object firstonly,
  41.                                        Lisp_Object noindirect,
  42.                        Lisp_Object event_or_keys);
  43.  
  44. extern Lisp_Object Fkeymap_name (Lisp_Object keymap);
  45. extern Lisp_Object Fset_keymap_name (Lisp_Object keymap, Lisp_Object name);
  46. extern Lisp_Object Fkeymap_prompt (Lisp_Object keymap, Lisp_Object inherit);
  47. extern Lisp_Object Fset_keymap_prompt (Lisp_Object keymap, Lisp_Object prompt);
  48.  
  49. extern int relevant_keymaps_to_search (Lisp_Object keys,
  50.                                        int max_maps, Lisp_Object maps[]);
  51. extern void describe_map_tree (Lisp_Object startmap, int partial,
  52.                                Lisp_Object shadow, Lisp_Object prefix,
  53.                                int mice_only_p);
  54.  
  55. extern void key_desc_list_to_event (Lisp_Object list, Lisp_Object event,
  56.                     int allow_menu_events);
  57.  
  58. extern Lisp_Object Vmeta_prefix_char;
  59. extern int event_matches_key_specifier_p (struct Lisp_Event *event,
  60.                       Lisp_Object key_specifier);
  61.  
  62. #endif /* _XEMACS_KEYMAP_H_ */
  63.